// 引入 defineConfig 和 webpack
const { defineConfig } = require('@vue/cli-service')
const webpack = require("webpack")
const path = require('path')

// 导出配置
module.exports = defineConfig({
    publicPath: process.env.NODE_ENV === 'production' ? './' : '/', // 所有的资源都会被链接为相对路径，这样打出来的包可以被部署在任意路径(之前是baseUrl，3.3之后更换了)
    outputDir: 'qe', // 输出文件目录
    assetsDir: 'static', // 放置静态文件
    lintOnSave: true, // 保存的时候做lint检查
    transpileDependencies: true,
    productionSourceMap: false, // 生产环境关闭sourcemap
    filenameHashing: true,  //生成的静态资源在它们的文件名中包含了 hash 以便更好的控制缓存，默认值为true
    configureWebpack: (config) => {
      if (process.env.NODE_ENV === 'production') {// 为生产环境修改配置...
        config.mode = 'production';
        config["performance"] = {//打包文件大小配置
          "maxEntrypointSize": 10000000,
          "maxAssetSize": 30000000
        }
      }
    },
    
    
    // 开发服务器配置
    devServer: {
        // 允许所有主机访问
        allowedHosts: "all",
        // 禁用 WebSocket 服务器
 
        // 自动保存
        hot: true,
        proxy: {
            '/api': {
              target: 'http://inquire.jlrbyy.cn/',
              changeOrigin: true,
              pathRewrite: {
                '^/api': ''
              }
            }
          }
        
     },
   
  // 转译依赖
  transpileDependencies: true,
  // 关闭保存时 lint
  lintOnSave:false,
  // 配置 webpack
  configureWebpack: {
    // 配置 jQuery 插件的参数
    plugins: [
        new webpack.ProvidePlugin({
            $: 'jquery',
            jQuery: 'jquery',
            'window.jQuery': 'jquery',
            Popper: ['popper.js', 'default']
        })
    ]
}
})